package com.wk.code.wkserver.utils;


import com.wk.code.wkserver.constant.Constant;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;


/**
 * 用户session服务
 */
@Slf4j
@Component
public class TokenUtils {

    @Resource
    private RedisUtils redisUtils;

    /**
     * 退出登录
     *
     * @param request 请求参数
     */
    public void logout(HttpServletRequest request) {
        redisUtils.hdel(Constant.ADMIN_USER_TOKEN_MAP, request.getAttribute(Constant.SYS_USER_ID));
    }

    /**
     * 用户是否登录
     *
     * @param userId 用户ID
     * @return boolean
     */
    public boolean checkUserLogin(String userId) {
        return redisUtils.hHasKey(Constant.USER_TOKEN_MAP, userId);
    }

    /**
     * 后台管理用户是否登录
     *
     * @param userId 用户ID
     * @return boolean
     */
    public boolean checkAdminUserLogin(String userId) {
        return redisUtils.hHasKey(Constant.ADMIN_USER_TOKEN_MAP, userId);
    }

}
